WORST_CASE(?,O(n^2))
* Step 1: DependencyPairs WORST_CASE(?,O(n^2))
    + Considered Problem:
        - Strict TRS:
            @(dd(x,xs),ys) -> dd(x,@(xs,ys))
            @(nil(),xs) -> xs
            rev(dd(x,xs)) -> @(rev(xs),dd(x,nil()))
            rev(nil()) -> nil()
        - Signature:
            {@/2,rev/1} / {dd/2,nil/0}
        - Obligation:
            innermost runtime complexity wrt. defined symbols {@,rev} and constructors {dd,nil}
    + Applied Processor:
        DependencyPairs {dpKind_ = DT}
    + Details:
        We add the following dependency tuples:
        
        Strict DPs
          @#(dd(x,xs),ys) -> c_1(@#(xs,ys))
          @#(nil(),xs) -> c_2()
          rev#(dd(x,xs)) -> c_3(@#(rev(xs),dd(x,nil())),rev#(xs))
          rev#(nil()) -> c_4()
        Weak DPs
          
        
        and mark the set of starting terms.
* Step 2: PredecessorEstimation WORST_CASE(?,O(n^2))
    + Considered Problem:
        - Strict DPs:
            @#(dd(x,xs),ys) -> c_1(@#(xs,ys))
            @#(nil(),xs) -> c_2()
            rev#(dd(x,xs)) -> c_3(@#(rev(xs),dd(x,nil())),rev#(xs))
            rev#(nil()) -> c_4()
        - Weak TRS:
            @(dd(x,xs),ys) -> dd(x,@(xs,ys))
            @(nil(),xs) -> xs
            rev(dd(x,xs)) -> @(rev(xs),dd(x,nil()))
            rev(nil()) -> nil()
        - Signature:
            {@/2,rev/1,@#/2,rev#/1} / {dd/2,nil/0,c_1/1,c_2/0,c_3/2,c_4/0}
        - Obligation:
            innermost runtime complexity wrt. defined symbols {@#,rev#} and constructors {dd,nil}
    + Applied Processor:
        PredecessorEstimation {onSelection = all simple predecessor estimation selector}
    + Details:
        We estimate the number of application of
          {2,4}
        by application of
          Pre({2,4}) = {1,3}.
        Here rules are labelled as follows:
          1: @#(dd(x,xs),ys) -> c_1(@#(xs,ys))
          2: @#(nil(),xs) -> c_2()
          3: rev#(dd(x,xs)) -> c_3(@#(rev(xs),dd(x,nil())),rev#(xs))
          4: rev#(nil()) -> c_4()
* Step 3: RemoveWeakSuffixes WORST_CASE(?,O(n^2))
    + Considered Problem:
        - Strict DPs:
            @#(dd(x,xs),ys) -> c_1(@#(xs,ys))
            rev#(dd(x,xs)) -> c_3(@#(rev(xs),dd(x,nil())),rev#(xs))
        - Weak DPs:
            @#(nil(),xs) -> c_2()
            rev#(nil()) -> c_4()
        - Weak TRS:
            @(dd(x,xs),ys) -> dd(x,@(xs,ys))
            @(nil(),xs) -> xs
            rev(dd(x,xs)) -> @(rev(xs),dd(x,nil()))
            rev(nil()) -> nil()
        - Signature:
            {@/2,rev/1,@#/2,rev#/1} / {dd/2,nil/0,c_1/1,c_2/0,c_3/2,c_4/0}
        - Obligation:
            innermost runtime complexity wrt. defined symbols {@#,rev#} and constructors {dd,nil}
    + Applied Processor:
        RemoveWeakSuffixes
    + Details:
        Consider the dependency graph
          1:S:@#(dd(x,xs),ys) -> c_1(@#(xs,ys))
             -->_1 @#(nil(),xs) -> c_2():3
             -->_1 @#(dd(x,xs),ys) -> c_1(@#(xs,ys)):1
          
          2:S:rev#(dd(x,xs)) -> c_3(@#(rev(xs),dd(x,nil())),rev#(xs))
             -->_2 rev#(nil()) -> c_4():4
             -->_1 @#(nil(),xs) -> c_2():3
             -->_2 rev#(dd(x,xs)) -> c_3(@#(rev(xs),dd(x,nil())),rev#(xs)):2
             -->_1 @#(dd(x,xs),ys) -> c_1(@#(xs,ys)):1
          
          3:W:@#(nil(),xs) -> c_2()
             
          
          4:W:rev#(nil()) -> c_4()
             
          
        The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed.
          4: rev#(nil()) -> c_4()
          3: @#(nil(),xs) -> c_2()
* Step 4: DecomposeDG WORST_CASE(?,O(n^2))
    + Considered Problem:
        - Strict DPs:
            @#(dd(x,xs),ys) -> c_1(@#(xs,ys))
            rev#(dd(x,xs)) -> c_3(@#(rev(xs),dd(x,nil())),rev#(xs))
        - Weak TRS:
            @(dd(x,xs),ys) -> dd(x,@(xs,ys))
            @(nil(),xs) -> xs
            rev(dd(x,xs)) -> @(rev(xs),dd(x,nil()))
            rev(nil()) -> nil()
        - Signature:
            {@/2,rev/1,@#/2,rev#/1} / {dd/2,nil/0,c_1/1,c_2/0,c_3/2,c_4/0}
        - Obligation:
            innermost runtime complexity wrt. defined symbols {@#,rev#} and constructors {dd,nil}
    + Applied Processor:
        DecomposeDG {onSelection = all below first cut in WDG, onUpper = Nothing, onLower = Nothing}
    + Details:
        We decompose the input problem according to the dependency graph into the upper component
          rev#(dd(x,xs)) -> c_3(@#(rev(xs),dd(x,nil())),rev#(xs))
        and a lower component
          @#(dd(x,xs),ys) -> c_1(@#(xs,ys))
        Further, following extension rules are added to the lower component.
          rev#(dd(x,xs)) -> @#(rev(xs),dd(x,nil()))
          rev#(dd(x,xs)) -> rev#(xs)
** Step 4.a:1: SimplifyRHS WORST_CASE(?,O(n^1))
    + Considered Problem:
        - Strict DPs:
            rev#(dd(x,xs)) -> c_3(@#(rev(xs),dd(x,nil())),rev#(xs))
        - Weak TRS:
            @(dd(x,xs),ys) -> dd(x,@(xs,ys))
            @(nil(),xs) -> xs
            rev(dd(x,xs)) -> @(rev(xs),dd(x,nil()))
            rev(nil()) -> nil()
        - Signature:
            {@/2,rev/1,@#/2,rev#/1} / {dd/2,nil/0,c_1/1,c_2/0,c_3/2,c_4/0}
        - Obligation:
            innermost runtime complexity wrt. defined symbols {@#,rev#} and constructors {dd,nil}
    + Applied Processor:
        SimplifyRHS
    + Details:
        Consider the dependency graph
          1:S:rev#(dd(x,xs)) -> c_3(@#(rev(xs),dd(x,nil())),rev#(xs))
             -->_2 rev#(dd(x,xs)) -> c_3(@#(rev(xs),dd(x,nil())),rev#(xs)):1
          
        Due to missing edges in the depndency graph, the right-hand sides of following rules could be simplified:
          rev#(dd(x,xs)) -> c_3(rev#(xs))
** Step 4.a:2: UsableRules WORST_CASE(?,O(n^1))
    + Considered Problem:
        - Strict DPs:
            rev#(dd(x,xs)) -> c_3(rev#(xs))
        - Weak TRS:
            @(dd(x,xs),ys) -> dd(x,@(xs,ys))
            @(nil(),xs) -> xs
            rev(dd(x,xs)) -> @(rev(xs),dd(x,nil()))
            rev(nil()) -> nil()
        - Signature:
            {@/2,rev/1,@#/2,rev#/1} / {dd/2,nil/0,c_1/1,c_2/0,c_3/1,c_4/0}
        - Obligation:
            innermost runtime complexity wrt. defined symbols {@#,rev#} and constructors {dd,nil}
    + Applied Processor:
        UsableRules
    + Details:
        We replace rewrite rules by usable rules:
          rev#(dd(x,xs)) -> c_3(rev#(xs))
** Step 4.a:3: Ara WORST_CASE(?,O(n^1))
    + Considered Problem:
        - Strict DPs:
            rev#(dd(x,xs)) -> c_3(rev#(xs))
        - Signature:
            {@/2,rev/1,@#/2,rev#/1} / {dd/2,nil/0,c_1/1,c_2/0,c_3/1,c_4/0}
        - Obligation:
            innermost runtime complexity wrt. defined symbols {@#,rev#} and constructors {dd,nil}
    + Applied Processor:
        Ara {araHeuristics = NoHeuristics, minDegree = 1, maxDegree = 2, araTimeout = 8, araRuleShifting = Just 1}
    + Details:
        Signatures used:
        ----------------
          dd :: ["A"(0) x "A"(1)] -(1)-> "A"(1)
          rev# :: ["A"(1)] -(15)-> "A"(0)
          c_3 :: ["A"(0)] -(0)-> "A"(14)
        
        
        Cost-free Signatures used:
        --------------------------
        
        
        
        Base Constructor Signatures used:
        ---------------------------------
          "c_3_A" :: ["A"(0)] -(0)-> "A"(1)
          "dd_A" :: ["A"(0) x "A"(1)] -(1)-> "A"(1)
        
        
        Following Still Strict Rules were Typed as:
        -------------------------------------------
        1. Strict:
          rev#(dd(x,xs)) -> c_3(rev#(xs))
        2. Weak:
          

** Step 4.b:1: Ara WORST_CASE(?,O(n^1))
    + Considered Problem:
        - Strict DPs:
            @#(dd(x,xs),ys) -> c_1(@#(xs,ys))
        - Weak DPs:
            rev#(dd(x,xs)) -> @#(rev(xs),dd(x,nil()))
            rev#(dd(x,xs)) -> rev#(xs)
        - Weak TRS:
            @(dd(x,xs),ys) -> dd(x,@(xs,ys))
            @(nil(),xs) -> xs
            rev(dd(x,xs)) -> @(rev(xs),dd(x,nil()))
            rev(nil()) -> nil()
        - Signature:
            {@/2,rev/1,@#/2,rev#/1} / {dd/2,nil/0,c_1/1,c_2/0,c_3/2,c_4/0}
        - Obligation:
            innermost runtime complexity wrt. defined symbols {@#,rev#} and constructors {dd,nil}
    + Applied Processor:
        Ara {araHeuristics = NoHeuristics, minDegree = 1, maxDegree = 2, araTimeout = 8, araRuleShifting = Just 1}
    + Details:
        Signatures used:
        ----------------
          @ :: ["A"(2) x "A"(2)] -(1)-> "A"(2)
          dd :: ["A"(2) x "A"(2)] -(2)-> "A"(2)
          dd :: ["A"(11) x "A"(11)] -(11)-> "A"(11)
          dd :: ["A"(15) x "A"(15)] -(15)-> "A"(15)
          dd :: ["A"(0) x "A"(0)] -(0)-> "A"(0)
          nil :: [] -(0)-> "A"(2)
          nil :: [] -(0)-> "A"(11)
          nil :: [] -(0)-> "A"(6)
          nil :: [] -(0)-> "A"(15)
          nil :: [] -(0)-> "A"(12)
          rev :: ["A"(11)] -(1)-> "A"(2)
          @# :: ["A"(2) x "A"(0)] -(3)-> "A"(0)
          rev# :: ["A"(15)] -(0)-> "A"(0)
          c_1 :: ["A"(0)] -(0)-> "A"(14)
        
        
        Cost-free Signatures used:
        --------------------------
        
        
        
        Base Constructor Signatures used:
        ---------------------------------
          "c_1_A" :: ["A"(0)] -(0)-> "A"(1)
          "dd_A" :: ["A"(1) x "A"(1)] -(1)-> "A"(1)
          "nil_A" :: [] -(0)-> "A"(1)
        
        
        Following Still Strict Rules were Typed as:
        -------------------------------------------
        1. Strict:
          @#(dd(x,xs),ys) -> c_1(@#(xs,ys))
        2. Weak:
          

WORST_CASE(?,O(n^2))